package com.mgxy;

public class GameUtils {

    /** 获取任意两个点所成的向量角度 0——2 * Math.PI */
    public static double getAngle(double startx,double starty,double endx,double endy){
        double tempx = endx - startx;
        double tempy = endy - starty;
        //对角线长度
        double z = Math.sqrt(tempx * tempx + tempy * tempy);
        //角度   0到1.57    相当于 0到pi/2
        double angle = (float)(Math.asin(Math.abs(tempy)/z));

        if (tempx > 0 && tempy < 0){
            //第一象限，得到270-360的角度
            angle = Math.PI * 2 - angle;
        } else if (tempx < 0 && tempy < 0){
            //第二象限
            angle = Math.PI + angle;
        } else if (tempx < 0 && tempy > 0){
            //第三象限
            angle = Math.PI - angle;
        } else if (tempx > 0 && tempy > 0){
            //第四象限，角度不用改变
        }
        return angle;
    }
}
